package chaoyue.study.feature.record;

/**
 * record中也可以定义构造方法
 */
public record RecordTest4(Integer id, String name) {
    /**
     * 这种写法表示构造方法的参数和属性的参数完全一致
     * 即在创建对象的时候需要提供全部的属性参数
     */
    public RecordTest4 {
        System.out.println("构造方法执行...");
        System.out.println("id=" + id + ", name=" + name);
    }

    /**
     * 构造方法也可以重写
     * 等同于class中的构造方法重写 第一行一定是要调用this的构造方法
     */
    public RecordTest4(Integer id) {
        this(id, "chaoyue");
        System.out.println("重写后的构造方法执行...");
    }

    public RecordTest4(Integer id, Integer age, String name) {
        this(id, name + age);
        System.out.println("重写后的构造方法执行2...");
    }


}
